
<%@page import="tmanager.*" import="java.sql.*" %>
<%@ include file="/WEB-INF/sql.jsp" %>

<%
    if (session.getAttribute("tmanager.professore") == null) {
        response.sendRedirect("../index.jsp");
        return;
    }
    
    //Recupero dalla sessione l'oggetto professore ed il tesista associato
    Professore professoreSessione = (Professore) session.getAttribute("tmanager.professore");
    int idStudente = (Integer) session.getAttribute("tmanager.idStudente");
    Studente tempStud = new Studente();

    try {
        tempStud = getStudenteFromDB(sqlDatiStudente, idStudente);
    } catch (SQLException e) {
        session.setAttribute("tmanager.erroreTitolo", "Errore durante la modifica Stato Studente");
        session.setAttribute("tmanager.erroreMessaggio", "Siamo spiacenti, si è verificato un errore durante la modifica dello Stato Studente. Provare ad effettuare l'operazione nuovamente.");
        response.sendRedirect("../errore.jsp");
        return;
    }

    //Recupero i dati di input del form
    String statoTesi = (request.getParameter("statoTesiStudente") == null) ? "" : request.getParameter("statoTesiStudente").trim();
    String titolo = (request.getParameter("titoloTesiStudente") == null) ? "" : request.getParameter("titoloTesiStudente").trim();
    String corso = (request.getParameter("corsoTesiStudente") == null) ? "" : request.getParameter("corsoTesiStudente").trim();
    String tipoTesi = (request.getParameter("tipologiaTesiStudente") == null) ? "" : request.getParameter("tipologiaTesiStudente").trim();
    String tipoLaurea = (request.getParameter("tipoLaureaStudente") == null) ? "" : request.getParameter("tipoLaureaStudente").trim();

    //Controllo la validità dei dati di input e in caso affermativo salvo le modifiche ai dati dello studente sul DB
    boolean datiModificati = false;
    if (!statoTesi.equals("")) {
        datiModificati |= !statoTesi.equals(tempStud.getStatoProgettoTesi());
        tempStud.setStatoProgettoTesi(statoTesi);
    }
    if (!titolo.equals("")) {
        datiModificati |= !titolo.equals(tempStud.getTitoloTesi());
        tempStud.setTitoloTesi(titolo);
    }
    if (!corso.equals("")) {
        datiModificati |= !corso.equals(tempStud.getCorsoTesi());
        tempStud.setCorsoTesi(corso);
    }
    if (!tipoTesi.equals("")) {
        datiModificati |= !tipoTesi.equals(tempStud.getTipologiaTesi());
        tempStud.setTipologiaTesi(tipoTesi);
    }
    if (!tipoLaurea.equals("")) {
        datiModificati |= !tipoLaurea.equals(tempStud.getTipoLaurea());
        tempStud.setTipoLaurea(tipoLaurea);
    }
    int tupleAggiornate = -1;
    if (datiModificati) {
        try {
            tupleAggiornate = updateStatoStudente(tempStud);
        } catch (SQLException e) {
            tupleAggiornate = -1;
            session.setAttribute("tmanager.erroreTitolo", "Errore durante la modifica dello Stato Studente");
            session.setAttribute("tmanager.erroreMessaggio", "Siamo spiacenti, si è verificato un errore durante il salvataggio dei dati per la modifica dello Stato Studente. Provare ad effettuare l'operazione nuovamente.");
            response.sendRedirect("../errore.jsp");
            return;
        }
    }

%>

<%!
    static String sStatoTesi="Lo stato progetto tesi &egrave; un campo testuale che indica lo stato attuale della tesi dello studente. &Egrave; un campo opzionale.";
    static String sTitoloTesi="Titolo Tesi &egrave; un campo testuale in cui deve essere definito il titolo tesi assegnato al tesista. &Egrave; un campo opzionale.";
    static String sCorsoTesi="Corso Tesi &egrave; un campo testuale in cui deve essere definito il corso nel quale il tesista svolge il proprio lavoro di tesi. &Egrave; un campo opzionale.";
%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Modifica Stato Tesista</title>
        <link rel="stylesheet" type="text/css" href="../CSS/defaultStyle.css" />
    </head>
    <body>
        <%@include file="../WEB-INF/jspf/header.jspf" %>
        <script type="text/javascript" src="../Scripts/scripts.js"></script>
        <script type="text/javascript">
          
            function inizializza(){
                $("#riepilogoStatic").remove();
                $("#HmodificaStatoStud").addClass("paginaCorrente");
                $("#statoTesiStudente").bind("focusout",rimuoviSuggGenerico);
                $("#statoTesiStudente").bind("focusin",{sugg:"<%=sStatoTesi%>"}, definisciSugg);
                
                $("#titoloTesiStudente").bind("focusout",rimuoviSuggGenerico);
                $("#titoloTesiStudente").bind("focusin",{sugg:"<%=sTitoloTesi%>"}, definisciSugg);
                
                $("#corsoTesiStudente").bind("focusout",rimuoviSuggGenerico);
                $("#corsoTesiStudente").bind("focusin",{sugg:"<%=sCorsoTesi%>"}, definisciSugg);
                
                $("#modificaStudente").bind("click",{p:"modificaStatoStud"}, invia);
                $("#cancella").bind("click",pulisci);
                $("<div class=\"menuRieplogo\"><h3>Suggerimenti:</h3></div>").appendTo("#corpoDx").fadeTo(10, 0.5);
            };
            $(document).ready(inizializza);
        </script>
        <div id="corpo">
            
            <% if (datiModificati) {%>
            <div id="corpoSx">
                <h2 class="centrato">Modifica Stato Tesista</h2>
            <p>Le informazione del profilo sono state aggiornate con successo.</p>
            </div>
            <% } else {%>
            <div id="corpoDx">
            <div class="menuRieplogo" id="riepilogoStatic">
            <h3>Suggerimenti:</h3>
            <ul>
               <li><%=sStatoTesi%></li>
               <li><%=sTitoloTesi%></li>
               <li><%=sCorsoTesi%></li>
            </ul>
            </div>
            </div>
            <div id="corpoSx">
                <h2 class="centrato">Modifica Stato Tesista</h2>
            <form class="modificaProfilo" id="modificaStatoStud" method="post" action="modificaStatoStudente.jsp">
               <fieldset>
                  <legend>Modifica Stato Tesista</legend>
                <label for="nomeStudente">Nome: </label>
                <input class="testo" type="text" id="nomeStudente" name="nomeStudente" disabled="disabled" value="<%= tempStud.getNome()%>" /><br />
                <label for="cognomeStudente">Cognome: </label>
                <input class="testo" type="text" id="cognomeStudente" name="cognomeStudente" disabled="disabled" value="<%= tempStud.getCognome()%>" /><br />
                <label for="relatoreStudente">Relatore: </label>
                <input class="testo" type="text" id="relatoreStudente" name="relatoreStudente" disabled="disabled" value="<%= professoreSessione.getNome()%> <%= professoreSessione.getCognome()%>" /><br />
                <label for="statoTesiStudente">Stato Progetto Tesi: </label>
                <input class="testo" type="text" id="statoTesiStudente" name="statoTesiStudente" value="<%= tempStud.getStatoProgettoTesi()%>" /><br />
                <label for="titoloTesiStudente">Titolo Tesi: </label>
                <input class="testo" type="text" id="titoloTesiStudente" name="titoloTesiStudente" value="<%= tempStud.getTitoloTesi()%>" /><br />
                <label for="corsoTesiStudente">Corso Tesi: </label>
                <input class="testo" type="text" id="corsoTesiStudente" name="corsoTesiStudente" value="<%= tempStud.getCorsoTesi()%>" /><br />
                <label for="tipologiaTesiStudente">Tipologia Tesi: </label>
                <select class="testo" id="tipologiaTesiStudente" name="tipologiaTesiStudente" >
                    <option value="<%= Studente.COMPILATIVA%>"
                            <% if (tempStud.getTipologiaTesi().equals(Studente.COMPILATIVA)) {%>
                            selected="selected"
                            <% }%>
                            ><%= Studente.COMPILATIVA%></option>
                    <option value="<%= Studente.SPERIMENTALE%>"
                            <% if (tempStud.getTipologiaTesi().equals(Studente.SPERIMENTALE)) {%>
                            selected="selected"
                            <% }%>
                            ><%= Studente.SPERIMENTALE%></option>
                </select><br />
                <label for="tipoLaureaStudente">Tipo Laurea: </label>
                <select class="testo" id="tipoLaureaStudente" name="tipoLaureaStudente" >
                    <option value="<%= Studente.TRIENNALE%>"
                            <% if (tempStud.getTipoLaurea().equals(Studente.TRIENNALE)) {%>
                            selected="selected"
                            <% }%>
                            ><%= Studente.TRIENNALE%></option>
                    <option value="<%= Studente.MAGISTRALE%>"
                            <% if (tempStud.getTipoLaurea().equals(Studente.MAGISTRALE)) {%>
                            selected="selected"
                            <% }%>
                            ><%= Studente.MAGISTRALE%></option>
                </select><br />
                <input type="submit" class="submit" id="modificaStudente" name="modificaStudente" value="Invia>>" />
                <input type="reset" value="Cancella" />
               </fieldset>
            </form>
            </div>
            <% }%>
        </div>
        <hr />
        <%@include file="../WEB-INF/jspf/footer.jspf" %>
    </body>
</html>
